package com.example.service.webhook.business.jingdong.entity;

import com.example.service.webhook.repository.base.Saveable;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author liyang
 * @email liyang@51dojo.com
 * @create 2017-10-24 上午10:27
 * @description 京东金条
 **/
@JsonIgnoreProperties(value = {"primaryVal","keyColumns","tableName"},ignoreUnknown = true)
public class JdJinTiaoBillEntity implements Saveable{

    private long id;
    private String userId;

    private String mappingId;

    private String loanId;

    private String productId;

    private String productName;

    private String statusCode;

    private BigDecimal originalAmount;

    private int retailDate;

    private int retailTime;

    private int originalTerms;

    private int currentTerm;

    private BigDecimal outstandingAmount;

    private int outstandingTerms;

    private String jdOrderNo;

    private String jdPayOrderNo;

    private String cashierOrderNo;

    private Date currentDueDate;

    private BigDecimal totalPaymentAmount;

    private BigDecimal payAmount;

    private int payPlanNum;

    private int overPlanNum;

    private BigDecimal overAmount;

    private BigDecimal refundAmount;

    private BigDecimal loanAmountDiscount;

    private int overDueDays;

    private int maxOverDueDays;

    private Date finishPayDate;

    private Date createTime;
    private Date lastModifyTime;

    private static final String[] keyColumns = {"id"};
    private static final String tableName = "t_jd_jintiaobill";

    @Override
    public String getTableName() {
        return tableName;
    }

    @Override
    public String[] getKeyColumns() {
        return keyColumns;
    }

    @Override
    public String getPrimaryVal() {
        return String.valueOf(id);
    }


    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getMappingId() {
        return mappingId;
    }

    public void setMappingId(String mappingId) {
        this.mappingId = mappingId;
    }

    public String getLoanId() {
        return loanId;
    }

    public void setLoanId(String loanId) {
        this.loanId = loanId;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getStatusCode() {
        return statusCode;
    }

    public void setStatusCode(String statusCode) {
        this.statusCode = statusCode;
    }

    public BigDecimal getOriginalAmount() {
        return originalAmount;
    }

    public void setOriginalAmount(BigDecimal originalAmount) {
        this.originalAmount = originalAmount;
    }

    public int getRetailDate() {
        return retailDate;
    }

    public void setRetailDate(int retailDate) {
        this.retailDate = retailDate;
    }

    public int getRetailTime() {
        return retailTime;
    }

    public void setRetailTime(int retailTime) {
        this.retailTime = retailTime;
    }

    public int getOriginalTerms() {
        return originalTerms;
    }

    public void setOriginalTerms(int originalTerms) {
        this.originalTerms = originalTerms;
    }

    public int getCurrentTerm() {
        return currentTerm;
    }

    public void setCurrentTerm(int currentTerm) {
        this.currentTerm = currentTerm;
    }

    public BigDecimal getOutstandingAmount() {
        return outstandingAmount;
    }

    public void setOutstandingAmount(BigDecimal outstandingAmount) {
        this.outstandingAmount = outstandingAmount;
    }

    public int getOutstandingTerms() {
        return outstandingTerms;
    }

    public void setOutstandingTerms(int outstandingTerms) {
        this.outstandingTerms = outstandingTerms;
    }

    public String getJdOrderNo() {
        return jdOrderNo;
    }

    public void setJdOrderNo(String jdOrderNo) {
        this.jdOrderNo = jdOrderNo;
    }

    public String getJdPayOrderNo() {
        return jdPayOrderNo;
    }

    public void setJdPayOrderNo(String jdPayOrderNo) {
        this.jdPayOrderNo = jdPayOrderNo;
    }

    public String getCashierOrderNo() {
        return cashierOrderNo;
    }

    public void setCashierOrderNo(String cashierOrderNo) {
        this.cashierOrderNo = cashierOrderNo;
    }

    public Date getCurrentDueDate() {
        return currentDueDate;
    }

    public void setCurrentDueDate(Date currentDueDate) {
        this.currentDueDate = currentDueDate;
    }

    public BigDecimal getTotalPaymentAmount() {
        return totalPaymentAmount;
    }

    public void setTotalPaymentAmount(BigDecimal totalPaymentAmount) {
        this.totalPaymentAmount = totalPaymentAmount;
    }

    public BigDecimal getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(BigDecimal payAmount) {
        this.payAmount = payAmount;
    }

    public int getPayPlanNum() {
        return payPlanNum;
    }

    public void setPayPlanNum(int payPlanNum) {
        this.payPlanNum = payPlanNum;
    }

    public int getOverPlanNum() {
        return overPlanNum;
    }

    public void setOverPlanNum(int overPlanNum) {
        this.overPlanNum = overPlanNum;
    }

    public BigDecimal getOverAmount() {
        return overAmount;
    }

    public void setOverAmount(BigDecimal overAmount) {
        this.overAmount = overAmount;
    }

    public BigDecimal getRefundAmount() {
        return refundAmount;
    }

    public void setRefundAmount(BigDecimal refundAmount) {
        this.refundAmount = refundAmount;
    }

    public BigDecimal getLoanAmountDiscount() {
        return loanAmountDiscount;
    }

    public void setLoanAmountDiscount(BigDecimal loanAmountDiscount) {
        this.loanAmountDiscount = loanAmountDiscount;
    }

    public int getOverDueDays() {
        return overDueDays;
    }

    public void setOverDueDays(int overDueDays) {
        this.overDueDays = overDueDays;
    }

    public int getMaxOverDueDays() {
        return maxOverDueDays;
    }

    public void setMaxOverDueDays(int maxOverDueDays) {
        this.maxOverDueDays = maxOverDueDays;
    }

    public Date getFinishPayDate() {
        return finishPayDate;
    }

    public void setFinishPayDate(Date finishPayDate) {
        this.finishPayDate = finishPayDate;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getLastModifyTime() {
        return lastModifyTime;
    }

    public void setLastModifyTime(Date lastModifyTime) {
        this.lastModifyTime = lastModifyTime;
    }
}
